20210918-TIL
September 18, 2021
오늘 문제는 어제보다 쉬운 문제여서, 구현할 요소들을 차분히 정리해서 풀 수 있었다.
- 쉬운 문제인데도 진행 순서에 대한 설명을 잘못 읽어서, 중간부터는 조금 헤맸다;;
‘악성 소프트웨어와 구현 오류’ 에 대해 공부했다.
- 보안 관련 오류는 대부분 구현 중에 발생하므로, 구현량을 줄이면 오류도 줄일 수 있다.
- 체계 수준의 보안을 유지하는 데에 중요한 역할을 하는 요소들의 집합을 TCB라고 한다.
- TCB의 핵심 요소, 보안 커널을 구현할 때, 코드의 양을 줄이면 구현 오류도 줄일 수 있다.
‘독립적인 검증/확인과 격리 원칙’ 에 대해 공부했다.
- 구현량 최소화 외에도, 독립적인 검증/확인이라는 절차를 통해 구현 오류를 줄일 수 있다.
- 보안 관련 코드의 대부분은 이러한 검증 절차를 활용할 수 있도록 오픈 소스로 관리된다.
- 또, 데프 콘과 같이 비슷한 생각을 가진 해커와 보안 전문가들의 모임(또는 행사) 도 있다.
- 개발자뿐만 아니라 공격자들도, 보안 요소를 파훼할 방법을 찾기 위해 여러 노력을 한다.
- 때문에, 보안이 뚫릴 가능성을 염두에 두고, 발생할 피해를 최소화할 방법을 찾아야 한다.
- 한 프로그램의 문제가 다른 프로그램에 영향을 주지 않도록 하는 원칙을 격리라고 한다.
- 프로그램마다 메모리 블록을 할당해 실행 영역을 구분하면, 프로그램들을 격리할 수 있다.
- 또, 컴퓨터상에서 가상 머신을 실행하면, 컴퓨터 체계 단위로 격리 원칙을 지킬 수 있다.
# TIL